!--------------------------------------------------- ! Scene 2: Home !--------------------------------------------------- !-- EDITED: Description Object mijnslaap "In your bedroom" with name 'bedroom' 'room', description "The weak light of the moon which enters the room through the window envelops the bedroom in a cloak of unworldly beauty. Only the soft breathing of your wife in the large bed breaches the silence. The door next to the heavy oaken wardrobe leads to the landing to the north. It is ice cold in the unheated room.", n_to over_deur, has light transparent; !-- EDITED: Description !-- EDITED: Sleep Object mijnbed "bed" mijnslaap class Furniture, with name 'bed' 'large', description "The large bed which you have built yourself fills almost half the room. Moonlight creeps over the many-coloured blanket that rises and falls with each breath your wife takes.", react_before [; Sleep: if (parent(player) == self) { "Certainly you could fall asleep again, if you could just stop thinking of Maartje. But you can't. You can't sleep until you've at least tried to free her. Even if you were somehow able to fall asleep again, there would be another day tomorrow, and yet another the day after - and someday sleep would elude you. It's better to face the evil today than to postpone it and risk something far worse."; }; ], has enterable transparent scenery; !-- EDITED: Blanket description Object deken "blanket" mijnbed class Prop, with name 'blanket' 'sheet' 'many-coloured', description "Crimson, sea-blue and pine squares, hardly recognisable in the twilight, alternate seemingly without pattern. Your wife Hilde made this blanket to fit the bed you built. You kept up the custom: only when both were ready could your marriage take place.", before [; Touch: "Softly you caress the blanket and think of happier times."; ], has male; !-- EDITED: If and Else description !-- EDITED: Kiss Object vrouw "Hilde" mijnbed with name 'wife' 'woman' 'lover' 'girlfriend' 'Hilde', slaap 0, description [; if (self.slaap == 0) { self.slaap = 1;"You bow forward to better see Hilde's face; for a moment her breath falters and she seems to go rigid, then her steady breathing returns. But you know enough - she doesn't sleep! She knows where you are going, but pretends to be asleep. Is this a quiet approval she'd never be able to express? Or is she simply to afraid to confront you?"; } else { "Hilde's tranquil angel's face and her rhythmic breathing do not betray that she is awake. She knows where you are going, but pretends to be asleep. Is this a quiet approval she'd never be able to express? Or is she simply to afraid to confront you?"; }; ], before [; Answer, Ask, AskFor, Tell, Squeeze, Spreek: if(self.slaap == 0) {"You cannot bring yourself to wake Hilde. She is strongly opposed to you endangering your life in an attempt to free your daughter. During the past few days, each time you brought up your intention to save her from the talons of the baron, Hilde exclaimed that she couldn't bear to lose you as well. It is better to let her sleep and leave quietly.";} else {"It is better to keep up the fa@ccade. Let her pretend to be asleep. She knows exactly what you are going to do, and it is easier for her to accept when she is not confronted with it explicitly. Besides, you don't like to think about the risks yourself.";}; Attack: "You ball your fists in a sudden moment of anger. ~It would be for eternity!,~ flashes through your mind - but as quickly the thought disappears and you no longer understand what it meant. You would never attack your wife Hilde. After all, you love her."; Kiss: if(self.slaap == 0){self.slaap = 1;"You bow forward to kiss Hilde's face; for a moment her breath falters and she seems to go rigid, and then her steady breathing returns. But you know enough - she doesn't sleep! She knows where you are going, but pretends to be asleep. Is this a quiet approval she'd never be able to express? Or is she simply to afraid to confront you?";} else {"Your lips brush her pale cheek in the tenderest sign of farewell. Strangely, she seems to go rigid and to try to bury her head deeper into the pillow.";}; Listen: if(self.slaap == 0){"Hilde's rhythmic breathing is a reassuring sound in this dangerous night.";} else{"Hilde's rhythmic breathing doesn't betray that she is, in fact, awake.";}; Pull, Push: "You would never use violence against your wife."; Smell: "Her smell you would recognise among thousands. It is the smell of warmth and security."; Touch, Knuffel: if(self.slaap == 0){"You'd better not do that; she might wake.";} else{"You let your fingertips brush her cheek and play with her blond hair. She trembles momentarily, but keeps up her acting and pretends to sleep.";}; WakeOther: if(self.slaap == 0){<>;} else{"How could you wake someone who is not asleep?";}; ], orders [; default: if (self.slaap == 0) { "You don't want to wake Hilde. Even if she wouldn't stop you, she would only worry unnecessarily if she knew the acts of heroism that you are planning.";} else { "She doesn't react to your command."; }; ], has animate female proper scenery; !-- COMMENT: Players will push, sit on, sit in, and stand on chairs. Object stoel "chair" mijnslaap class PropSup, with name 'chair' 'stool' 'seat', description "A simple wooden chair you hang your clothes on at night.", has ; !-- EDITED: Description Object kleding "your working clothes" stoel with name 'clothes' 'clothing' 'working', description "These are the clothes you wear when you go to fell trees in the woods on weekdays: tough jeans, a red-blue checkered shirt and two heavy leather boots. A faint smell of sweat hangs around the shirt.", before [; Wear: if(jas has worn && kleding hasnt worn) "You cannot wear you working clothes over your winter coat."; Disrobe: if(jas has worn && kleding has worn) "You will have to take off your coat before you can take off your working clothes."; Burn: if(TestScope(toorts,player)) { if(second == toorts || second == nothing) { if(toorts has general) { if(verhaaltracker.status == 5) { "In these empty halls not many will be impressed by your self-immolation."; } else { ZelfVerbrand(); }; } else { "Now that the torch has gone out, it can't set anything on fire."; } } else { "You can't use that to make a fire."; } } ], has clothing proper transparent pluralname; Object hemd "lumberjack's shirt" kleding with name 'shirt' 'lumberjack' 'checked' 'sweat' 'woollen', description "A red-blue checkered woollen shirt, spun, coloured and knitted by hand by your wife Hilde. The smell of the honest sweat of hard work hangs around it.", before [; Wear: <>; Take: <>; Disrobe: <>; Drop: <>; PutOn: <>; Burn: <>; Smell: "Unmistakebly the smell of sweat. But according to Hilde, that is erotic."; ], has concealed; Object broek "lumberjack's jeans" kleding with name 'jeans' 'lumberjack' 'trousers' 'tough' 'Levi^s', description "Blue Levi's, not improved by everything they have gone through while you did your job. That they are still intact is a proof of their durability.", before [; Wear: <>; Take: <>; Disrobe: <>; Drop: <>; PutOn: <>; Burn: <>; ], has male concealed; !-- EDITED: Changed "noses" to "toes" Object laarzen "lumberjack's boots" kleding with name 'boot' 'boots' 'leather' 'heavy' 'lumberjack' 'shoes', description "A pair of leather boots, with steel toes for extra protection.", before [; Wear: <>; Take: <>; Disrobe: <>; Drop: <>; PutOn: <>; Burn: <>; ], has pluralname concealed; !-- EDITED: Description Object kast "wardrobe" mijnslaap class Furniture, with name 'wardrobe' 'closet' 'oaken' 'heavy', description "This large piece of furniture has taken you weeks. Not only did you feel the tree from which it is made yourself, you also sawed it into planks, sandpapered them, built the wardrobe, varnished it, and even made the subtle carvings. The memory of those happy first months of your marriage, when you and Hilde furnished your small house, makes you smile.", has container ~open openable scenery; !-- EDITED: Take,remove message Object kastkleding "large amount of dresses, jeans and other pieces of clothing" kast class Prop, with name 'large' 'amount' 'dresses' 'jeans' 'other' 'pieces' 'clothing' 'clean', description "In this wardrobe you keep all your clothes, neatly folded and ironed, stacked into orderly piles. In a narrow part to the side hang all your wife's dresses.", before [; Take, Remove: "Your finger the clothes absently, but none of them seem more appropriate than your work clothes."; ], parse_name [; if (NextWord() == 'clean' or 'new') { if(NextWord() == 'shirt' or 'jeans' or 'boots' or 'shoes' or 'trousers' or 'clothes' or 'clothing') return 2;wn--; }; if (NextWord() == 'in'){ if (NextWord() == 'wardrobe' or 'closet' or 'oaken' or 'heavy') return 3;wn--;};wn--;wn--; return -1; ], has static transparent ~scenery; !-- EDITED: Description Object jurken "dresses" kastkleding class Prop, with name 'dresses' 'dress', description "Your fingers brush past the rough, stiff cloth of the dresses. Practical and without frills, they are the working clothes of a busy housewife. In the very back of the wardrobe hides the white satin of Hilde's bridal gown, as if it doesn't want to be seen with the other clothes.", has concealed static pluralname; !-- EDITED: Description Object trouwjurk "bridal gown" kastkleding class Prop, with name 'bridal' 'gown' 'wedding', description [; print "You hold the cool, soft cloth and close your eyes for a moment. Memories of your wedding resurface with great intensity; it is as if not a single day has gone by, so clearly can you see it in your mind."; if (verhaaltracker.bruiloft == 0) {Herinner(1);} ! Bruiloft else{print "^";}; ], before [; Touch, Take: <>; ], has concealed static; Object broeken "jeans" kastkleding class Prop, with name 'jeans' 'trousers', description "These tough jeans are the ideal clothing for a lumberjack: indestructible.", has concealed static pluralname; Object houtsnijwerk "carvings" mijnslaap class Prop, with name 'carvings' 'decorations' 'wood' 'carving' 'figures', description "Hearts, birds, flowers and other figures that dwelt in your amorous mind when you carved these decorations circle artfully about each other.", has pluralname; Object hartjes_snijwerk "carved hearts" mijnslaap class Prop, with name 'heart' 'hearts', description "Small hearts run along the entire edge of the wardrobe.", has pluralname; Object vogels_snijwerk "carved birds" mijnslaap class Prop, with name 'bird' 'birds' 'flock' 'flocks', description "The carved birds circle gracefully around long trails of flowers.", has pluralname; Object bloemen_snijwerk "carved flowers" mijnslaap class Prop, with name 'flower' 'flowers' 'trail' 'trails', description "The large wardrobe is decorated with trails of flowers wherein both local and exotic flowers can be seen. Flocks of little birds circle around them.", has pluralname; !-- EDITED: Description Object raam "window" mijnslaap with name 'window' 'windowpane' 'outside', description "Unworldly moonlight enters the room through the window. The village outside is covered under a thick layer of snow, making the church tower rise like an accusing black finger from a white sea. ~How is it possible,~ you wonder, ~that this scenery seems so lovely and charming, but is so icy cold and hostile?~", before [; Search: <>; Close: if(self has open){give self ~open; "You close the window, and the cold wind no longer blows through the room.";}; Open: if(self hasnt open){give self open; "The window swings open, and an icy wind immediately enters the room. Standing in the moonlight, you let your gaze glide over the winter landscape. Somewhere to the right, far in the woods, lies the castle of the baron - the black structure wherein your little girls suffers mortal fears.";}; Climb: "Although that is a way to get outside and start your journey to the castle, it seems more sensible to use the stairs."; ], has scenery openable ~open; Object barentopf_raam "Barentopf" class Prop, with name 'barentopf' 'topf', found_in mijnslaap tuin, description [; if (location == mijnslaap){ "Through the window you can see the snow-covered Barentopf rising behind the village. It is the highest hill in the neighbourhood."; } else{ "You can see the snow-covered Barentopf rising behind the village. It is the highest hill in the neighbourhood, but it does not lie in the right direction if you wish to reach the baron."; }; ], has scenery male; !-- EDITED: If, Else Object dorp_raam "village" class Prop, with name 'village' 'houses' 'house' 'residence' 'residences' 'city' 'hamlet', found_in mijnslaap tuin, description [; if (location == mijnslaap){ "Because your house lies on a hill at the edge of the village, you have a good view of the other residences from the window. Lights burn behind only a few windows; in this winter night, the rest of the village is wrapped in darkness and snow."; } else{ "Your house lies at the edge of the village, which in this cold December night is burdened with a thick layer of snow. At this time of the night nobody walks the streets anymore. The village wraps itself in silence."; }; ], has scenery; !-- EDITED: Description Object sneeuw_raam "snow" class Prop, with name 'snow' 'white' 'layer' 'thick', found_in mijnslaap tuin, description "During the past few days, a thick layer of snow has settled on the landscape. In the streets it has degenerated into a dirty brown sludge, but apart from that the snow gives the world a majestic appearance.", has scenery; Object kerk_raam "church" class Prop, with name 'church' 'churchtower' 'tower', found_in mijnslaap tuin, description [; if (location == mijnslaap){ "The church tower rises like an accusing black finger from the white snow."; } else{ "The top of the church tower just peeks above the houses on the other side of the street, like a black finger against the star-covered sky."; }; ], has scenery; Object sterren_raam "stars" class Prop, with name 'stars' 'star' 'galaxy' 'sky' 'twinkling', found_in mijnslaap tuin haarslaap bos_1 bos_2 bos_3 ophaalbrug, description [; if (wolvin.status == 99) { "The night sky is spangled with thousands of flickering stars, like as many eyes that keep watch over the animals."; } else "The night sky is spangled with thousands of flickering stars, like as many eyes that keep watch over humanity."; ], has scenery pluralname; !-- EDITED: Description Object maan_raam "moon" class Prop, with pname '.p' 'moon' '.p' 'moonlight' '.p' 'light' '.p' 'man' '.p' 'man' 'in' 'the' 'moon', found_in mijnslaap tuin bos_1 bos_2 bos_3 ophaalbrug overloop, description [; if (location == mijnslaap){ "Through the window you can see the full moon against a sky of stars. For a moment it seems as if the man in the moon winks at you reassuringly, but then he returns to his usual mysterious expression."; }; if(location == overloop){ if(over_deur has open) {"The silvery light of the moon flows from the bedroom into the landing.";} else {"The door to the bedroom is closed, so you cannot see the moon.";}; } else if (wolvin.status ~= 99){ "The man in the moon regards you coldly, almost accusingly, from his elevated position."; } else { "The white ball gives more than enough light to see by."; }; ], has scenery male; Object bos_raam "woods" class Prop, with name 'forest' 'wood' 'woods', found_in mijnslaap tuin, description "The woods lie as an ink-black mass over the hills. At this hour and in this season it is a dangerous place, full of wild animals.", has scenery; !-- EDITED: Description Object over_deur class Deur, with name '.p' 'door' '.p' 'door' 'to' '.x' 'the' '.or' 'my' '.or' 'our' 'bedroom' '.or' 'landing', short_name [; if (location == mijnslaap) print "door to the landing"; else print "door to the bedroom"; return true; ], description [; if (location == mijnslaap) "The close-fitting door separates your bedroom from the landing, and hence from the rest of the house."; else "This door leads back to the bedroom."; ], found_in mijnslaap overloop, door_dir [; if (location == mijnslaap) {return n_to;} else {return s_to;}; ], door_to [; if (location == mijnslaap) return overloop; else return mijnslaap; ], has door openable ~open scenery male; !-- EDITED: Description !-- EDITED: before Object nachtkastje "pine night table" mijnslaap class PropSup, with name 'table' 'night' 'pine', description [; print "A simple night table made of pinewood, the very first piece of furniture you made yourself."; if(parent(foto) == self){print " On the night table is a family photo.";}; ""; ], before[; Open: "In the drawer of the night table lies nothing of interest."; ], has ; Object deurtje "drawer" nachtkastje class Prop, with name 'drawer', description "A simple pine drawer without a lock.", has ; !-- EDITED: if and else !-- QUESTION: Is the marriage unhappy? The burn message makes me think that. !-- The other descriptions do not. Object foto "family photo" nachtkastje with name 'photo' 'family photo' 'picture' 'portrait' 'photograph', description [; if (verhaaltracker.status < 6){"This photograph, made for the tenth anniversary of your marriage, is a few years old. Solemnly, you and Hilde stand next to each other as two black-and-white statues, once again clad in your wedding clothes. On the foreground, close against you, stands your daughter Maartje -- little Maartje, in her beautiful white dress, a radiant smile on her face. In the picture you have laid a protective arm across her shoulder. But now she has been kidnapped by the evil baron, and once again, you vow to do everything possible to free her.";} else {"This photograph, made for the tenth anniversary of you and Hilde's marriage, is a few years old. Solemnly, you stand next to each other as two black-and-white statues, once again clad in your wedding clothes. On the foreground, close against you, stands your daughter Maartje -- little Maartje, in her beautiful white dress, wears a grave expression. She seems very uncomfortable with the arm you have laid across her shoulders.";}; ], after [; PutOn: if(parent(self) == nachtkastje){give self concealed;}; Take: give self ~concealed; return false; default: return false; ], before [; Burn: if(TestScope(toorts,player)) { if(second == toorts || second == nothing) { if(toorts has general) { remove self; "The photo that used to document your happy family life is utterly consumed by the fire, until nothing than the shadow of a lie remains."; } else { "Now that the torch has gone out, it can't set anything on fire."; } } else { "You can't use that to make a fire."; } } ], has concealed; !-- EDITED: first print !-- COMMENT: If you have shadows, the players will try to touch them, get !-- them and so on. Object overloop "On the landing" with name 'landing' 'corridor' 'upstairs', description [; print "The landing is enveloped by uneven darkness."; if(over_deur has open){print "Moonlight enters the landing through the open door to your bedroom in the south. ";} else {print "The door to your bedroom is closed. ";}; if(maartje_deur has open){print "To the north, the red door to Maartje's room is slightly ajar. ";} else {print "A red door to the north leads to the room of your daughter Maartje. ";}; "Next to the stairs down stands an elegant cupboard, above which hangs a large ornate mirror in a gilded frame."; ], s_to over_deur, n_to maartje_deur, d_to over_trap, out_to over_trap, before [; Go: if(noun == d_to) {TrapNaarTuin(); return true;}; ], has light transparent; !-- EDITED: Description Object kastje "cupboard" overloop with name 'cupboard', description "This elegantly carved cupboard is one of the few pieces of furniture in the house that you have not made yourself: it comes from the inheritance of Hilde's grandmother. The two little doors in the front don't quite fit, a defect you have been planning to fix for years, though you somehow never got around to it.", has container openable ~open scenery; Object deurtjes "doors" overloop with name 'doors' 'little', description "Made of the same cherry wood as the rest of the cupboard, wear and tear has made them hang slightly askew on their hinges.", before [; Open: <>; ], has scenery pluralname; !-- EDITED: Description Object scharnieren "hinges" overloop with name 'hinges' 'hinge' 'copper', description "Four copper hinges that still functional perfectly, but have grown loose over the years.", has scenery pluralname; !-- EDITED: Remove self Object fotoboek "album" kastje with pname '.p' 'album' '.p' 'book' '.p' 'photoalbum' '.p' 'photos' '.p' 'photographs' '.p' 'family-album' '.p' 'photo' '.p' 'next' 'page' '.or' 'photo' '.p' 'more' 'photos', gesloten 1, description [; self.gesloten = 0; if (verhaaltracker.fotoalbum < 5) {Herinner(2);} ! Fotoalbum else{"Once again you leaf through the photo album, but this time you don't let yourself get carried away by your memories. No matter how closely you look, the second half of the book remains empty.";}; ], before [; Consult, Open: <>; Close: if (self.gesloten == 1) { "The album is already closed."; } else { if (verhaaltracker.fotoalbum == 5) { "With a melancholy sigh you close the photo album."; } else { "You decide not to look at the rest of the photos, and close the album."; }; }; Burn: if(TestScope(toorts,player)) { if(second == toorts || second == nothing) { if(toorts has general) { remove self; "You relinquish the album to the flames and see, with a mixture of horror and grim satisfaction, how even the memory of a lost happiness falls to the flames' eternal hunger."; } else { "Now that the torch has gone out, it can't set anything on fire."; } } else { "You can't use that to make a fire."; } } ], has transparent; !-- EDITED: Description Object lijmresten "traces of glue" fotoboek class Prop, with name 'glue' 'traces', description "Simple traces of glue, as if all the photographs made after a certain date had been torn out of the album." has pluralname concealed; !-- EDITED: Description ! QUESTION! Object spiegel "mirror" overloop class Prop, with name 'mirror', description [; print "You gaze at yourself in the mirror"; if(kleding has worn) { print ", heroism shining in your eyes. Your lumberjack outfit fits like a glove and accentuates the heavy muscles of your arms. "; } else { print ". In your nightshirt, you look more desperate than heroic, but appearances are deceiving. "; }; print "A grim smile plays around the corners of your mouth when you think of the fear the baron will feel when you enter his castle to "; if(parent(axe) == player){ "decapitate him with your heavy axe."; } else { "pound him into pulp with your strong fists."; }; ], before [; Attack: "The time for that has not yet come."; ], has ; Object spiegel_lijst "frame" overloop class Prop, with name 'frame' 'gilded', description "The excessively decorated frame, painted with gold, would fit in better with your mother-in-law's interior than it does in yours - no surprise, since she has given it to you. As she regularly comes to visit, unfortunately, you cannot throw it away.", before [; Attack: "You would love to, but social conventions stop you."; ], has ; !-- EDITED: Description Object maartje_deur class Deur, with pname 'door' 'red' '.p' '.x' 'red' 'door' 'to' '.x' 'Maartje^s' '.or' 'room' '.or' 'bedroom' '.or' 'landing', short_name [; if (location == haarslaap) print "door to the landing"; else print "door to Maartje's room"; return true; ], description [; if (location == overloop) "This door, painted in a cheerful red, leads to the room of your kidnapped daughter Maartje."; else "This door leads beack to the landing."; ], found_in haarslaap overloop, door_dir [; if (location == haarslaap) {return s_to;} else {return n_to;}; ], door_to [; if (location == haarslaap) return overloop; else return haarslaap; ], has door openable ~open scenery; !-- EDITED: Description Object over_trap "stairs" with pname 'stairs' '.p' 'down' '.p' 'downstairs' '.p' '.x' 'wooden' 'stairs' '.x' 'down' '.p' 'downwards' '.p' 'outside', description "The wooden stairs circle downwards into ink-black depths.", found_in overloop, door_dir d_to, door_to tuin, before [; Climb, Go, Enter: if (noun == self || noun == d_obj || noun == tuin) { TrapNaarTuin(); return true; }; ], has door scenery pluralname open; [ TrapNaarTuin ; print "Cautiously you seek your way downwards through the darkness. In the hall you grab your winter coat and put it on, then you open the front door and step outside into the garden."; VraagToets(0,0,0); PlayerTo(tuin); move jas to player; give jas worn; give tuindeur open; return true; ]; [ TuinNaarTrap ; if (tuindeur has open) {print "Through the open front door you step inside again.";} else {print "Opening the front door, you step inside.";}; print " You hang your coat on the hall-stand, and climb the dark stairs back to the landing."; VraagToets(0,0,0); PlayerTo(overloop); move jas to over_trap; give jas ~worn; return true; ]; Object jas "winter coat" over_trap with name 'coat' 'winter', description [; print "You bought this winter coat recently, after much urging by your wife. True, there were holes in your old one, and it wasn't half as warm, but it was familiar, it was "; style bold; print "your"; style roman; " winter coat - but women don't understand that sort of thing."; ], before [; Disrobe: if(verhaaltracker.status < 6 && kleding hasnt worn) { "It is icy cold outside. Only your thick winter coat protects you against freezing."; } else if (verhaaltracker.status < 6 && kleding has worn) "It is icy cold outside. The thick winter coat and your working clothes are necessary to protect you against freezing."; Burn: <>; ], has clothing; Object haarslaap "In Maartje's room" with name 'maartje' 'room' 'bedroom' 'maartje^s', description "Without Maartje's radiant presence, her room seems dead and empty. It is a dreary sight: a bed in which nobody sleeps, a dollhouse with which nobody plays, a desk behind which nobody studies. The gay colours in which you painted her ceiling and furniture appear in the pale light of the stars as a pallet of greys. The door to the south leads back to the landing.", s_to maartje_deur, react_before [; Sleep: "To simply fall asleep again and dream of Maartje, to do nothing, to think of nothing but her slender appearance - you could not even if you tried. She has been kidnapped by the Baron, and you would not be able to sleep until you have tried to free her. Even if you were somehow able to fall asleep again, there would be another day tomorrow, and yet another the day after - and someday sleep would elude you. It's better to face the evil today than postpone it and risk something far worse."; ], has light transparent; Object maartjebed "Maartje's bed" haarslaap class Furniture, with name 'bed' 'Maartje^s' 'child^s', geslapen 0, description [; print "Under the window is Maartje's bed, a spacious child's bed. Like almost every piece of furniture in your house, it is a product of your diligent labour."; if(self.geslapen == 0){ if(parent(kussen) == self){ print " The bed has been neatly made, the sheets perfectly straight, the pillow puffed up. Too virginal, too untouched, as if it was never meant to be used by humans."; } else{ print " The bed has been neatly made, the sheets perfectly straight, although the pillow is missing. It has evidently not been slept in."; }; } else{ if(parent(kussen) == self){ print " The sheets on the bed are disorderly and the pillow lies to one side, as if someone has recently slept here. It makes the room look less sepulchral."; } else{ print " The sheets on the bed are disorderly, as if someone has recently slept here. It makes the room look less sepulchral."; }; }; ""; ], before [; Search, Look: if(parent(dagboek_sleutel) == kussen) { move dagboek_sleutel to player; give dagboek_sleutel ~concealed; "You find a small copper key hidden under the pillow. Surprised, you pick it up."; } else return false; Enter: self.geslapen = 1; return false; ], has enterable container transparent scenery open proper; Object deken_maartje "Maartje's blankets" maartjebed class Prop, with name 'sheet' 'sheets' 'blanket' 'blankets', description [; if(maartjebed.geslapen == 0){ "The red and blue blankets lie neatly on the bed."; } else { "The red and blue blankets have been draped over the bed in a disorderly fashion."; }; ], before [; Attack: maartjebed.geslapen = 1; "Fiercely, you hit and tear at the sheets and blankets on Maartje's bed to disturb their unbearable neatness."; LookUnder: maartjebed.geslapen = 1; "You look under the blankets, but do not find a thing."; Pull: maartjebed.geslapen = 1; "You pull at the sheets and blankets on Maartje's bed to disturb their unbearable neatness."; Push, Take, Kreuk: maartjebed.geslapen = 1; "You crumple the sheets and blankets on Maartje's bed to disturb their unbearable neatness."; ], has proper pluralname; Object kussen "Maartje's pillow" maartjebed with name 'pillow' 'Maartjes' 'Maartje^s' 'pillowcase', description "Maartje's pillow is comfortably soft, as it is filled with feathers. A jocund pillowcase in all the colours of the rainbow envelops it.", before [; Examine, Search, LookUnder: if(parent(dagboek_sleutel) == kussen) { move dagboek_sleutel to player; give dagboek_sleutel ~concealed; "You find a small copper key hidden under the pillow. Surprised, you pick it up."; } else return false; Take: if(parent(dagboek_sleutel) == kussen) { move dagboek_sleutel to player; give dagboek_sleutel ~concealed; "You find a small copper key hidden under the pillow. Surprised, you pick it up."; } else { "The pillow is too big and awkward to carry along on your quest. You return it to the bed."; }; ], has proper; Object dagboek_sleutel "ornate key" kussen with name 'key' 'small' 'copper' 'ornate', description "The small copper key, ornamented with delicate patterns, shows traces of intensive use.", before [; Drop, ThrowAt: if(parent(player) == kasteel_kerker_cel && parent(self) == player) { if(kasteel_kerker_cel has locked) sleutelweg.select(1); return true; } return false; ], has concealed; !-- EDITED: Description !-- EDITED: Climb Object raam_maar "window" haarslaap with name 'window' 'windowpane' 'outside', description "Threateningly, the coniferous forest looks at you through the window, its hostile silence a promise of hardship and danger. Somewhere, hidden deeply within it, lies the baron's castle. And somewhere, deep in the castle, the dungeon where Maartje is imprisoned. You can almost see her, crying for her father, lonely, abandoned, locked up in a cold stony cell.", before [; Search: <>; Close: if(self has open){give self ~open; "You close the window, and a funereal silence returns.";}; Open: if(self hasnt open){give self open; "The window swings open, and the sound of the wind through the coniferous forest softly sneaks into the room. Somewhere, far away, you hear the howling of wolves.";}; Climb: "Although that is a way to get outside and start your journey to the castle, it seems more sensible to use the stairs."; ], has scenery openable ~open; !-- EDITED: Description Object sneeuw_maar "snow" haarslaap class Prop, with name 'snow' 'white' 'layer', description "During the past few days, a thick layer of snow has settled on the landscape. The branches of the trees bow down under their white burden.", has scenery; Object maan_maar "moon" haarslaap class Prop, with name 'moon', description "From this side of the house the moon cannot be seen.", has scenery; Object bos_maar "forest" haarslaap class Prop, with name 'forest' 'wood' 'woods' 'trees' 'tree' 'coniferous', description "The forest lies as an ink-black mass upon the hills. In the heart of this darkness lives the malicious baron.", has scenery; !-- EDITED: Description Object heuvels_raam "hills" class Prop, with name 'hills' 'hill', found_in haarslaap mijnslaap, description "In the summer, the verdant hills give this area a picturesque charm. But in these cold winter months, they cower beneath the sombre woods.", has pluralname scenery; !-- EDITED: Description !-- EDITED: Listen Object wolven_maar "wolves" haarslaap class Prop, with name 'wolves' 'wolf', counter 0, description [; print "You can see no movement in the woods, at least not from this distance."; if (raam_maar has open) { print " But lamenting howls rise, hardly audible, from the far hills."; }; ""; ], before [; Listen: if(self.counter == 0){self.counter = 1; "You lean out of the window to better hear the howling of a pack of wolves. Their many lamentations form a single melody, for a moment, and then suddenly cease. An ominous silence follows, and you heave a sigh of relief when a minute later the sound of a lonely wolf comes from another part of the forest.";} else { "From the depths of the forest, now and then rises the howling of wolves."; }; ], has scenery pluralname; Object wind "wind" haarslaap class Prop, with name 'wind', before [; Examine, Listen: "The wind sighs softly along the snow-laden branches of the coniferous forest."; ], has male; !-- EDITED: Description !-- EDITED: Play Object poppenhuis "dollhouse" haarslaap class Furniture, with name 'dollhouse', description "You built this dollhouse yourself: three stories, with little doors and windows that can actually open and close, all kinds of furniture, and wooden dolls with finely carved faces that make the house their home. Hilde made the curtains, the carpets and little clothes for the dolls.", played 0, before [; Play: if(self.played == 0) { self.played = 1; "You lower yourself to your knees before the dollhouse, and gaze dispiritedly at the dolls. Then you pick up the mother with your left hand and the father with your right hand. You have father enter the house through a little door.^^~Well mum,~ he says, ~I have worked very hard today. You have no idea how hungry I am!~^^~Well dad,~ she answers in a strange high-pitched voice, ~that is good, because I have cooked an entire doll's kettle full of porridge. Children, come and eat, father is home!~^^You put the two dolls on their doll's chairs, and pick up the daughter. She walks to the sitting room, en whan she sees her father she cries: ~Daddy!~^^^Distressed, you close your eyes and put the dolls away.";} else { "As you reach for the dolls, you remember Maartje and your vow to rescue her."; }; ], has scenery container open; !-- EDITED: Description Object pop_deurtjes "doll's doors" poppenhuis class Prop, with name 'doors' 'door' 'little' 'doll^s' 'handle' 'handles', description "Painted doors with moving tiny handles separate the different rooms in the dollhouse. This way, the dolls have some privacy, and less nuisance from draughts.", has pluralname; !-- EDITED: Description Object pop_meubels "doll's furniture" poppenhuis class Prop, with name 'furnitures' 'chairs' 'tables' 'chair' 'table' 'little' 'doll^s', description "Small chairs are grouped around minature tables.", has pluralname; !-- EDITED: Description Object pop_raampjes "doll's windows" poppenhuis class Prop, with name 'windows' 'window' 'doll^s' 'little', description "The sides of the dollhouse are adorned with doll-sized windows, in front of which hang moveable curtains. Here the dolls can look outside: the front of the house is opened, but obviously not to them.", has pluralname; !-- EDITED: Description Object pop_gordijntjes "doll's curtains" poppenhuis class Prop, with name 'curtains' 'curtain' 'doll^s' 'little', description "Hilde made small curtains that fit in with the rest of the interior. Dolls have style too.", before [; Pull, Push: "You pull the delicate tiny curtains closed, then push them open again."; ], has pluralname; !-- EDITED: Description Object pop_kleedjes "doll's carpets" poppenhuis class Prop, with name 'carpets' 'carpet' 'little' 'doll^s', description "Soft carpets with wild patterns cover the wooden floor of the dollhouse, and give that cosy appearance to the doll rooms that they would otherwise miss.", has pluralname; !-- EDITED: Description Object pop_kleertjes "doll's clothing" poppenhuis class Prop, with name 'clothing' 'clothes' 'doll^s' 'little', description "Hilde sowed these outfits with an eye for the finest detail: dresses, pants, shirts, skirts, shoes, even tiny socks and hats have not been forgotten. It might well be that you have never seen Hilde as happy as when she could put all her love and creativity into this.", has pluralname; Object poppen "dolls" poppenhuis with name 'dolls' 'doll' 'father' 'mother' 'son' 'daughter', description [; if(poppenhuis.played == 0) "Four dolls live in the dollhouse: a father, a mother, a son, and a daughter. Father is sitting on the couch, reading a newspaper, while mother, probably busy cooking a meal, stands in the kitchen. The son gazes thoughtfully out the window, while the daughter, dressed in her little red dress, lies on her bed in her bedroom."; if(poppenhuis.played ~= 0) "Four dolls live in the dollhouse: a father, a mother, a son, and a daughter. Father and mother are sitting on chairs around the dinner table, where you just put them yourself. The son gazes thoughtfully out of the window, while the daughter, dressed in her little red dress, lies on the floor of the kitchen."; ], before [; Take: "Right now, the dolls are the only ones in your house that have a normal family life, and you're not planning to disturb that."; Play: <>; ], has pluralname; Object bureau "desk" haarslaap class Furniture, with name 'desk' 'table' 'beech', description "The small desk made of lacquered beech wood is covered with sheets of paper, notebooks and crayons.", has scenery supporter; Object papier "sheets of paper" bureau class Prop, with name 'sheet' 'paper' 'sheets' 'blank' 'stacks' '.p' '.or' 'sheets' '.or' 'stacks' '.x' 'of' 'paper', description "Several neat stacks of blank paper lie on the left side of the desk, but dozens of drawings chaotically cover the rest of the tabletop.", has pluralname; Object tekeningen "drawings" bureau class Prop, with name 'drawing' '.p' 'drawings', description "All the drawings Maartje has made are gay and happy: butterflies flap about a meadow full of flowers; a small house with your family in front of it; a father pulling a sledge on which his daughter is sitting. The bright colours burst from the white paper, even in the pale light of the stars.", has pluralname; !-- EDITED: Description Object dagboek "diary" bureau with counter 0, pname 'fake' 'leather' '.p' '.x' 'red' 'diary', with_key dagboek_sleutel, before [; Open: if (self has locked && parent(dagboek_sleutel) == player) { ; return true; } else { <>; }; Unlock: if (self hasnt locked) "The diary has already been unlocked."; if (self has locked && second == dagboek_sleutel) { print "You insert the copper key into the lock, and turn it carefully. With a soft click, the diary springs open.^"; give self ~locked; return true;} print "After several failed attempts, you conclude that ", (the) second, IsorAre(second), " not the key to this diary.^"; return true; Consult, Examine: if (self has locked && parent(dagboek_sleutel) ~= player) { "The book, bound in fake red leather, must be a diary, since it is locked by a small copper lock. But although you burn with curiosity, you will not damage Maartje's diary."; } else { if (self has locked && parent(dagboek_sleutel) == player) {; print "^";} if (self.counter == 0) { self.counter = 1; print "You feel absurdly guilty when you open the diary to read what secrets your little daughter has entrusted to it. Of course a father shouldn't do this, but this is an emergency. Perhaps it contains something that can help you free her."; VraagToets(0,0,0); "But nothing is written in the diary, not a single word. Instead, the pages of the first half of the diary have been completely filled in with black ink. From top to bottom, from left to right, with unfailing precision each white page has been transformed into solid black. The second half of the diary is still blank, untouched, stainless. Distraught, you close the diary."; } else { "Once again you examine the diary, and once again are there only pages coloured a solid black in the first half, and lily-white pages in the second half. Maartje has never written a word, or she has made them all unreadable."; }; }; Burn: if(TestScope(toorts,player)) { if(second == toorts || second == nothing) { if(toorts has general) { remove self; move kaft to location; "The diary immediately goes up in flames, and the deep black of the ink changes into the grey black of ashes. After several minutes only the non-flammable fake leather cover of the diary remains, a form without content."; } else { "Now that the torch has gone out, it can't set anything on fire."; } } else { "You can't use that to make a fire."; } } ], has openable ~open lockable locked; !-- EDITED: Description Object plafond "ceiling" haarslaap class Prop, with name 'ceiling' 'up', description "Painted with sweet scenes, normally the ceiling of Maartje's room radiates gaiety and carefreeness. Her absence seems to have robbed them of their lustre.", has ; Object meubilair "furniture" haarslaap class Prop, with name 'furniture', description "A bed, a desk and a beautiful dollhouse, complete with tiny beds and tiny desks and - no, not with a tiny dollhouse - make up the furniture in Maartje's room.", has ; !-- EDITED: Description !-- COMMENT: How about Wooly for a name? !-- EDITED: Burn Object beer "teddy" haarslaap with name 'bear' 'teddy' 'teddybear' 'teddy-bear' 'toy' 'brown', description [; if(verhaaltracker.status < 5){ "Brown has been Maartje's favourite toy animal and most loyal companion for years. The smile on his face is reassuring, and even if his eyes are merely buttons, some kind of intelligence seems to reside in them."; } else { "Brown has been Maartje's favourite toy animal and most loyal companion for years. But the smile on his face is melancholic rather than reassuring, and even if his eyes are merely buttons, they nevertheless seem to be about to start crying bitterly."; }; ], before [; Knuffel: "You take the bear into your strong arms, and hug him as if your life depends on it. A tear rolls over your cheek when you remind yourself that Maartje doesn't even have the consolation of her teddy."; Kiss: "You give the teddy a kiss on his brown snout, and whisper in his ear that you will bring back Maartje."; Burn: if(TestScope(toorts,player)) { if(second == toorts || second == nothing) { if(toorts has general) { remove self; move knopen to location; "Brown burns like oil, and smokes like a chimney. When the flames reach his head, he looks with a sad expression of incomprehension. ~I thought you loved me...~ is the message in his button eyes.^^ ~Brown, no, I'm sorry,~ you stammer, and you try to extinguish the fire. But you are too late, and nothing remains of the teddy but the two buttons, half-melted."; } else { "Now that the torch has gone out, it can't set anything on fire."; } } else { "You can't use that to make a fire."; } } ], has male; !-- EDITED: Description ! QUESTION Object knopen "Brown's eyes" with name 'eyes' 'Brown^s' 'button' 'buttons', description "Two black buttons, half-melted in the searing fire to which you committed Brown, are all that this honest bear has left in the world.", has pluralname; !-- EDITED: S_to and W_to Object tuin "In the garden" with name 'garden' 'outside' 'downstairs' 'down', description "Your front garden too has been buried by a thick layer of snow, which hides all plants from view. Only a few bare bushes that crouch against the garden fence penetrate the white blanket. Behind you, the front door leads back into the house, while the road to the east winds through the village and the forest to the baron's castle. From his unreachable heights the moon looks reproachfully down on you. The tip of the church tower can be seen above the houses on the other side of the road.", u_to tuindeur, n_to tuindeur, in_to tuindeur, s_to "That leads to the village square next to the church, far from Maartje.", w_to "That road would take you out of the valley, each step taking you farther away from Maartje and the baron.", e_to bosdeur, has light transparent; !-- EDITED: Description Object tuinhek "garden fence" tuin class Prop, with name 'fence' 'garden' 'opening', description "A low wooden fence separates your garden from the street. The garden path leads to the opening in the fence.", before [; Close, Open: "The fence does not enclose the garden entirely: an opening has been left in it."; ], has ; !-- EDITED: Description Object tuinpad "garden path" tuin class Prop, with name 'path' 'garden', description "There is but a little snow on the garden path, because you swept it only this afternoon. From the front door it leads to the opening in the fence.", has ; !-- EDITED: Description Object tuinstruik "bushes" tuin class Prop, with name 'bush' 'bushes', description "The bushes have long lost their leaves and their charm. They await the new spring as wooden skeletons.", has pluralname; !-- EDITED: Description Object overkant "other side" tuin class Prop, with name 'other' 'side', description "The houses on the other side of the street are much like yours: two stories, wooden, and covered with snow. It seems that your neighbours are sleeping, as no light shines from their windows.", has ; !-- EDITED: Description Object straat "street" tuin class Prop, with name 'street' 'road' 'sludge', description "The streets are full of the dirty brown sludge that remains when feet and cartwheels mix snow with mud.", before [; Cross: "You see nothing of interest on the opposite side of the road."; ], has ; !-- EDITED: Description Object huis "your house" tuin class Prop, with pname 'house' 'my', description "Your house is, like almost every house in the village, built from wood and has been painted in simple, plain colors. It has two stories: the bedrooms are on the top story; the living room and the kitchen are on the bottom one. You glance through the window of your bedroom, but Hilde does not appear to wave you goodbye.", before [; Enter, Go, GoIn: <>; ], has proper; !-- EDITED: Description Object tuindeur "door" with pname '.x' 'yellow' 'door' '.p' 'inside' '.p' 'in' '.p' 'front' '.p' 'landing' '.p' 'upstairs' '.p' 'corridor', description "Last summer, you painted the front door a mustard yellow.", found_in tuin, door_dir u_to, door_to overloop, react_before [; Climb, Go, GoIn, Enter: if (noun == self || noun == u_obj || noun == overloop || noun == n_obj || noun == in_obj) { if(TuinNaarTrap() == true) return true; }; ], has door scenery open openable; Object brievenbus "letterbox" tuin class Furniture, with name 'letterbox' 'mailbox' 'box', description "A small letterbox hangs on the outside of the garden fence.", before [; Insert: if(second == self) { if (noun == axe || noun == beer || noun == kleding) { "That doesn't fit in the letterbox."; }; }; ], has openable ~open container; !-- EDITED: Description !-- EDITED: Attack Object baron_brief "letter from the baron" brievenbus with pname 'letter' '.p' 'letter' 'from' 'the' 'baron' '.p' 'parchment' '.p' 'signature', description [; print "In elegant handwriting, a message has been written on the parchment:^^"; style bold; print "To Maartje's parents,^ ^ With this letter I want to tell you that your daughter Maartje has been taken from your home and brought to my castle at my command. Do not worry: she is safe here and is well taken care of. Do not try to visit Maartje or take her away from me; my castle is heavily guarded and you would only risk your own well-being.^ ^ I understand that it must be difficult for you to lose your daughter, and I apologise for your suffering. What is my motive? I love her, and I cannot live without her at my side. With me she will be happy, I promise that on my honour and my hope of salvation. Someday you will understand that this is the best possible situation.^ ^ The Baron.^^"; style roman; "Trembling with anger you stare at the signature at the bottom of the page."; ], before [; Consult: <>; Attack: move snippers to parent(baron_brief); remove baron_brief; "In a fit of rage you tear the letter apart in dozens of shreds. How dare he! ~I love her,~ he writes. The heartless villain..."; Burn: if(TestScope(toorts, player)) { if(second == toorts || second == nothing) { if(toorts has general) { remove self; "That feels good! You incinerate the baron's lies, so that you will never have to read them again."; } else { "Now that the torch has gone out, it can't set anything on fire."; } } else { "You can't use that to make a fire."; } } ], has male; !-- COMMENT: I thought eating the shreds was hilarious! Did you mean for it to be funny? !-- EDITED: Eat !-- EDITED: Burn Object snippers "shreds" baron_brief with name 'shreds' 'shred', description "These shreds are all that remains of the horrible letter from the baron.", before [; Eat: if(actor == player && noun == self) { print "You put the shreds into your mouth, mash them to a pulp, and then swallow every memory of the infamous letter.^"; remove self; return true; }; Burn: if(TestScope(toorts, player)) { if(second == toorts || second == nothing) { if(toorts has general) { remove self; "You sprinkle the little shreds of paper into the flame of the torch; as a flight of foolish moths they are set ablaze, flutter downwards and are utterly consumed before they reach the ground."; } else { "Now that the torch has gone out, it can't set anything on fire."; } } else { "You can't use that to make a fire."; } } ], has pluralname; !-- EDITED: Description !X-- EDITED: Burn Object axe "axe" tuin with name 'axe', description [; if(baron.state == 1 || baron.state == 2) "This is your most important tool. Without doubt you have felled thousands of trees with it. The axe is well-honed, has a good balance, and with your muscles the weight is no problem at all. You will probably be able to cleave the baron's head in a single blow."; "This is your most important tool. Without doubt you have felled thousands of trees with it. The axe is well-honed, has a good balance, and with your muscles the weight is no problem at all."; ], before [; Burn: "The axe won't burn; the wooden handle is much too tough and hard."; ], has male;